Method for sequenced document annotations

ABSTRACT

A method for sequenced document annotation is disclosed. The method includes linking a first annotation to a document, where the first annotation is defined by a first primary graphic and a first sequence identifier. Thereafter, a first value is assigned to the first sequence identifier, and the first primary graphic and the first sequence identifier are displayed. After incrementing the first value to a second value, a second annotation is linked to the document. The second annotation is defined by a second sequence identifier and a second primary graphic identical to the first primary graphic. The second sequence identifier is assigned an incremented second value, and the second primary graphic and the second sequence identifier are displayed.

CROSS-REFERENCE TO RELATED APPLICATIONS

Not Applicable

STATEMENT RE: FEDERALLY SPONSORED RESEARCH/DEVELOPMENT

Not Applicable

BACKGROUND

1. Technical Field

The present disclosure generally relates to graphical user interfacesfor managing annotations linked to electronic documents, and moreparticularly, to methods for sequenced document annotations.

2. Related Art

Advancements in high speed data communications and computingcapabilities have increased the use of remote collaboration forconducting business. While real-time collaboration usingvideoconferencing and the like are gaining popularity, the vast majorityof collaboration occurs over e-mail in the exchange of documentsincorporating incremental modifications, comments, and the like. A localuser may create an initial version of a document, and transmit the sameto remotely located colleagues. These remote users may then make theirown changes or add comments in the form of annotations appended to thedocument, and then transmit the new version back to the local user.

Such collaboration may involve the exchange of documents generated withword processing applications, desktop publishing applications,illustration/graphical image manipulation applications, Computer AidedDesign (CAD) applications, and so forth. As utilized herein, the term“document” may refer to data produced by any of the aforementionedsoftware applications. Furthermore, the term “content” may refer to dataparticular to the software application that generated it and stored inthe document of the same. Due to the existence of many differentcomputing platforms having a wide variety of operating systems,application programs, and processing and graphic display capabilities,it has been recognized by those in the art that a device-independent,resolution-independent file format was necessary to facilitate suchexchange. In response to this need, the Portable Document Format (PDF),amongst other competing formats, has been developed.

The PDF standard is a combination of a number of technologies, includinga simplified PostScript interpreter subsystem, a font embeddingsubsystem, and a storage subsystem. As those in the art will recognize,PostScript is a page description language for generating the layout andthe graphics of a document. Further, per the requirements of the PDFstorage subsystem, all elements of the document, including text, vectorgraphics, and raster (bitmap) graphics, collectively referred to hereinas graphic elements, are encapsulated into a single file. The graphicelements are not encoded to a specific operating system, softwareapplication, or hardware, but are designed to be rendered in the samemanner regardless of the specificities relating to the system writing orreading such data. The cross-platform capability of PDF aided in itswidespread adoption, and is now a de facto document exchange standard.PDF has been released as an open standard published by the InternationalOrganization for Standardization (ISO) as ISO/IEC 3200-1:2008.Currently, PDF is utilized to encode a wide variety of document types,including those composed largely of text, and those composed largely ofvector and raster graphics. Due to its versatility and universality,files in the PDF format are often preferred over more particularizedfile formats of specific applications. As such, documents are frequentlyconverted to the PDF format.

A number of useful improvements have been made since the initialreleases of PDF readers, writers, and the standard itself. Oneimprovement that is particularly beneficial in a collaborativeenvironment is the support for adding annotations to a base document.For example, a local user creates an initial version of a document, andtransmits the same to distant colleagues. Thereafter, these remote usersadd their comments as annotations, and transmit the newly annotatedversions of the document back to the local user for further revisions.Such annotation features are useful in a wide variety of collaborativesettings, such as between a client and a service provider, within acorporate hierarchy, and so forth. It is noted that PDF is not the onlydocument format incorporating collaboration features, and filesgenerated by word processor, spreadsheet, and presentation applicationssuch as Word, Excel, and PowerPoint, respectively, all from MicrosoftCorp. of Redmond, Wash., also include the feature of adding annotationsand tracking revisions.

From the user interface perspective, PDF documents are typicallyrendered as a static, graphical image, in which individual elementsthereof such as text, pictures, and other elements are not editable. Theaforementioned annotations are graphically overlaid or “placed” on theunderlying document, with placement being precisely controlled by theuser. Thus, the functionality is similar to graphic illustration/designand image manipulation applications where various objects can bepositioned on a document canvas by navigating a cursor to a desiredlocation and providing a subsequent input to make placement permanent.Prior to positioning the cursor, the object to be placed, such as ageometric primitive, a text box, or the like, is selected.

During the course of a typical workflow involving these types ofapplications, whether PDF annotation, graphic design, or imagemanipulation, numerous objects may be placed on the underlying document.In many cases, the same objects are reused in many different parts ofthe document, and hence have identical visual appearances. For example,an engineering drawing for a building may require multiple electricaloutlets that may each be depicted with a common symbol placed atselected locations.

The use of identical graphics, however, notwithstanding its purpose indepicting identical elements, may result in confusion stemming from aninability to reference any particular one. Some graphical objects caninclude an editable text field within which additional descriptors maybe inserted, and it is oftentimes desirable to sequence or associate anumber to the graphics. Conventionally, if the text field of thegraphical objects is to have a unique value, each one must beindividually edited. Although multiple objects can be edited at once,the modifiable features are those that are common amongst the selectedobjects. Accordingly, there is a need in the art for an improved methodfor managing annotations, and for sequenced document annotation inparticular.

BRIEF SUMMARY

In accordance with one embodiment set forth in the present disclosure,there is contemplated a method for sequentially annotating a document.The method may begin with a step of linking a first annotation to thedocument. The first annotation may be defined by a first primary graphicand a first sequence identifier. The method may also include a step ofassigning a first value to the first sequence identifier, as well as astep of displaying the first primary graphic and the first sequenceidentifier on a workspace window. A step of incrementing the first valueto a second value may be included, in addition to a step of linking asecond annotation to the document. The second annotation may be definedby a second sequence identifier and a second primary graphic identicalto the first primary graphic. Furthermore, the method may includeassigning the second value to the second sequence identifier. There mayalso be a step of displaying the second primary graphic and the secondsequence identifier on the workspace window. The present invention willbe best understood by reference to the following detailed descriptionwhen read in conjunction with the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other features and advantages of the various embodimentsdisclosed herein will be better understood with respect to the followingdescription and drawings, in which:

FIG. 1 is an exemplary computer system that may be capable to performfunctions for use with aspects of the present invention including adisplay monitor;

FIG. 2 is a block diagram of system components of the exemplary computersystem of FIG. 1;

FIG. 3 is an exemplary graphical user interface of an applicationincluding a workspace window and a toolbox window, in which severalembodiments of the present disclosure may be implemented,

FIG. 4 is a block diagram illustrating exemplary attributes associatedwith an annotation or data object;

FIG. 5 is a graphical representation of an example electrical outletannotation;

FIG. 6 is a flowchart illustrating the steps of a method for sequenceddocument annotation in accordance with one embodiment;

FIG. 7 is a detailed view of the graphical user interface showing theedit pull-down menu;

FIG. 8 is a detailed view of the toolbox window with a thumbnail of theexample electrical outlet annotation;

FIG. 9 is an exemplary sequence definition screen;

FIG. 10 is an exemplary thumbnail indicating that a sequence has beenset in relation to its corresponding annotation;

FIG. 11 is a detailed illustration of a first annotation, a secondannotation and a third annotation each including respective sequenceidentifiers overlaid on a document rendered in the workspace window;

FIG. 12 is another variation of the exemplary thumbnail indicating thevalue of the sequence identifier that will be displayed in a newlyplaced third annotation;

FIG. 13 illustrates a subsequent revision of the document shown in FIG.11 including a fourth annotation;

FIG. 14 illustrates a revision of the document shown in FIG. 13 with thesecond annotation removed and the previous third and fourth annotationsbeing renumbered in accordance with one embodiment of the presentinvention;

FIG. 15 is another exemplary document with a first annotation, a secondannotation, and a third annotation each including respective sequenceidentifiers with prefixed text content; and

FIG. 16 is a subsequent revision of the document shown in FIG. 15 withthe first annotation removed but without the subsequently addedannotations being renumbered in accordance with another embodiment ofthe present invention.

Common reference numerals are used throughout the drawings and thedetailed description to indicate the same elements.

DETAILED DESCRIPTION

The detailed description set forth below in connection with the appendeddrawings is intended as a description of certain embodiments of thepresent disclosure, and is not intended to represent the only forms thatmay be developed or utilized. The description sets forth the variousfunctions in connection with the illustrated embodiments, but it is tobe understood, however, that the same or equivalent functions may beaccomplished by different embodiments that are also intended to beencompassed within the scope of the present disclosure. It is furtherunderstood that the use of relational terms such as first and second andthe like are used solely to distinguish one entity from another withoutnecessarily requiring or implying any actual such relationship or orderbetween such entities.

With reference to FIG. 1, an exemplary hardware environment in whichaspects of the present invention may be implemented includes a computersystem 10 with a system unit 12 and a display monitor 14. The displaymonitor 14 graphically displays output from the data processingoperations performed by the system unit 12. The display monitor 14 is avisual output device and includes some form of screen. The displaymonitor 14 may be of a Liquid Crystal Display (LCD) type, a Cathode RayTube (CRT) type, or any other suitable type of display. Devices such asa keyboard 16 and a mouse 18 provide input to the data processingoperations, and are connected to the system unit 12 via USB ports 20.Various other input and output devices may be connected to the systemunit 12, and alternative interconnection modalities may be substitutedwith the USB ports 20.

As shown in the block diagram of FIG. 2, the system unit 12 includes aCentral Processing Unit (CPU) 22, which may represent one or moreconventional types of such processors, such as an IBM PowerPC, IntelPentium (x86) processors, and so forth. A Random Access Memory (RAM) 24temporarily stores results of the data processing operations performedby the CPU 22, and is interconnected thereto typically via a dedicatedmemory channel 26. The system unit 10 may also include permanent storagedevices such as a hard drive 28, which are also in communication withthe CPU 22 over an input/output (I/O) bus 30. Other types of storagedevices such as tape drives, Compact Disc drives, and the like may alsobe connected. A graphics card 32 is also connected to the CPU 22 via avideo bus 34, and transmits signals representative of display data tothe display monitor 14. As indicated above, the keyboard 16 and themouse 18 are connected to the system unit 12 over the USB port 20. A USBcontroller 36 translates data and instructions to and from the CPU 22for external peripherals connected to the USB port 20. Additionaldevices such as printers, microphones, speakers, and the like may beconnected to the system unit 12.

The system unit 12 may utilize any operating system having a graphicaluser interface (GUI), such as WINDOWS from Microsoft Corporation ofRedmond, Wash., MAC OS from Apple, Inc. of Cupertino, Calif., variousversions of UNIX with the X-Windows windowing system, and so forth. Thesystem unit 12 executes one or more computer programs, with the resultsthereof being displayed on the display monitor 14. Generally, theoperating system and the computer programs are tangibly embodied in acomputer-readable medium, e.g. one or more of the fixed and/or removabledata storage devices including the hard drive 28. Both the operatingsystem and the computer programs may be loaded from the aforementioneddata storage devices into the RAM 24 for execution by the CPU 22. Thecomputer programs may comprise instructions, which, when read andexecuted by the CPU 22, cause the same to perform or execute the stepsor features of the various embodiments set forth in the presentdisclosure.

According to one embodiment, a user can interact with the system 10,specifically with the graphics being displayed on the monitor 14, viathe mouse 18. The movement of a cursor generated on the monitor 14 istied to the movement of the mouse 18, with further interactivity beingprovided with input from the mouse buttons. Input from the keyboard 16also provides interactivity with the system 10. The followingdescription refers to “clicking” the mouse buttons, “positioning” thecursor, “holding” the mouse button to “drag” an on-screen object, and soforth. It will be appreciated by those having ordinary skill in the artthat such terms have well-understood meanings relative to interactionswith the system 10 through a graphical user interface, and also findcorrespondence to other input modalities such as pen/digitizers and thelike.

The foregoing computer system 10 represents only one exemplary apparatussuitable for implementing aspects of the present invention. As such, thecomputer system 10 may have many different configurations andarchitectures. Any such configuration or architecture may be readilysubstituted.

FIG. 3 illustrates one exemplary graphical user interface 38 of a PDFreviewing software application in which various embodiments of themethod for sequenced document annotation may be implemented. Whilevarious exemplary embodiments set forth below are described in relationto such a PDF reviewing software application, it will be appreciatedthat any other graphic manipulation software application may instead besubstituted. As indicated above, the software application runs on awindowing system, and accordingly has a number of interface elementsthat are common to applications for the same.

In further detail, the functional, interactive features of the graphicaluser interface 38 are contained within a main window 40 that includes atitle bar 42 with basic window controls 44. In addition, the main window40 includes a menu bar 46, from which various functions of the reviewingsoftware application may be invoked. Within the main window 40 is aworkspace window 48, within which a document is rendered. In the exampleshown, the document is an architectural drawing comprised of a smallvariety of simple graphical elements including lines and arcs, thoughany other content such as text, raster images, and the like may also beincluded. Although in the exemplary embodiment the document is a PDFfile structured in accordance with the standard as discussed above, itis expressly contemplated that any other suitable document format may berendered in the workspace window 48.

Also within the main window 40 is a toolbox window 50 that displays aninventory of selected, most often used, or most recently usedannotations, with further pertinent aspects thereto being described ingreater detail below. In accordance with various embodiments, thetoolbox window 50 is contemplated to have the functionality similar tothat set forth in U.S. Pat. No. 7,600,193 to Gunderson, the disclosureof which is wholly incorporated by referenced herein.

Annotations are understood to be a type of data object that isassociated with an underlying document, and generally refers to aconceptual entity corresponding to a contiguous block of memory at aspecific location and with a specific size, and is defined by one ormore properties that define its characteristics. Referring to FIG. 4, anexemplary data object 52 includes a tool type attribute 54, and aparameters attribute 56. It is understood that an annotation can be ageometric primitive such as a point, a line (single segment ormulti-segment), an ellipse, a polygon, or the like, as well asspecialized annotation object such as callout boxes. A “tool” thereforerefers to such broad categories of objects, and so the tool typeattribute associates the annotation as being a specific one of thesecategories. To further define the features of the annotation, theparameters attribute 56 can include the dimensions, color, linethickness, positioning coordinates, and other parameters that arespecific to the tool type.

It is contemplated that multiple annotations or data objects can becombined into one, in which case the tool type attribute may have avalue indicative of a group, with different parameter attributes 56further defining the features of constituent objects. For example, asshown in FIG. 5, an electrical outlet annotation 58 is defined by acentral ellipse 60, an upper intersecting line 62, and a lowerintersecting line 64, each of which are geometric primitives as notedabove. Each of these base objects is grouped into the single electricaloutlet annotation 58. The particular data structure is presented by wayof example only and not of limitation, and any other suitable datastructure to represent the annotation may be substituted.

The flowchart of FIG. 6 sets forth a method for sequentially annotatinga document in accordance with one embodiment of the present disclosure.Generally, a series of related annotations can be assigned a sequenceidentifier that is displayed with each one. The method includes a step300 of linking a first annotation to the document. As indicated above, agiven annotation or data object is defined by a tool type attribute 54and a parameters attribute 56. Referring again to FIG. 5, however, theannotation 58 can be more generally characterized as being defined by aprimary graphic 66 and a sequence identifier 68. The primary graphic 66is comprised of the central ellipse 60, the upper intersecting line 62,and the lower intersecting line 64. It is understood that the sequenceidentifier 68 designates the specific instance of an annotation within agiven sequence of annotations.

One exemplary way in which the annotation 58 is linked to the underlyingdocument includes first placing the constituent elements on to thedocument, and then “selecting” the same. As shown in the screen captureof FIG. 7, the “edit” pull-down menu 70 includes a selectable option 72referenced as “group,” also accessible by the keyboard shortcut“ctrl-g,” that is operative to combine each of the selected elementsinto one annotation 58. Feedback to the user to indicate that all of thedesired elements have been selected is provided by way of control pointssurrounding each selected element. In addition to the foregoing, otherways of linking the annotation 58 to the document are also contemplated,such as pasting in an existing version from clipboard memory.

Thereafter, so that the annotation 58 is available for selection fromthe inventory of annotations in the toolbox window 50, a selectableoption 74 referred to as “add to tool chest” is clicked, in response towhich a submenu 76 listing the various destination groups is displayed.As utilized herein, destination groups refer to the group of itemsdisplayed together on a single pane of the toolbox window 50. Althoughany of the destination groups can be selected as desired, for thepurposes of the present example, the appropriate destination group isthe “my tools” group selectable from submenu 76. FIG. 8 best illustratesa thumbnail 78 or secondary visual representation generated from theannotation 58 being displayed within the “my tools” group of the toolboxwindow 50 upon completion of this step, along with other annotationsthat have been previously placed therein.

Referring again to the flowchart of FIG. 6, the method continues with astep 302 of assigning the sequence identifier 68 a first value.Continuing with the above example, and with additional reference to FIG.8, one way in which a sequence can be applied to the annotation 58 is byright-clicking the thumbnail 78 to activate a context sensitive menu 80with a selectable option 82 referenced as “sequence.” In response toselecting the option 82, another context sensitive sub-menu 84 isactivated, including a selectable option 86 referenced as “define.”Selection of option 86 is operative to activate a sequence definitionscreen 88, as further detailed in FIG. 9. Since the option to define thesequence was selected based upon activating the context sensitive menu80 particular to the thumbnail 78, it is understood that the sequence isbeing defined with respect to the corresponding annotation 58. Besidesthe use of the toolbox window 50 to define sequences, other ways toactivate the feature via other user interface elements are alsocontemplated.

From the sequence definition screen 88, a variety of options of thesequence may be set. By selecting and deselecting a primary checkbox 90,sequencing is activated and deactivated, respectively. In oneembodiment, it is contemplated that when the primary checkbox 90 isdeselected, all of the other options in the sequence definition screen88 are disabled or are inaccessible.

Via a numbering style pull-down menu 92, the format of the numbers ofthe sequence can be selected. For example, although the selection isdefaulted to Arabic numerals, i.e., “1, 2, 3 . . . ” alphabet charactersequences such as “a, b, c . . . ” can also be utilized. Otherenumerating sequences such as Roman numerals and capital and/or lowercase versions of the foregoing can be selected. As shown in the datastructure diagram of FIG. 4, the numbering style may be set in asequence style attribute 98.

A prefix designation input 94 and a suffix designation input 96 arereceptive to additional text that can be added before the sequence valueand after the sequence value, respectively. Although the prefix andsuffix text may be stored in separate fields, i.e., a prefix attribute100 and a suffix attribute 102 that are separate from the sequenceidentifier 68, the values may be rendered in close physical proximity toeach other. Furthermore, special tags may be entered in the prefixdesignation input 94 and the suffix designation input 96 thatdynamically retrieve various properties of the file such as the filename, revision date, etc. that are generated in-line with the sequenceidentifier 68. Detailed examples of the way prefix and suffix text canbe utilized will be discussed below. If, after placement of one moreannotations of a sequence, it becomes necessary to modify any of theforegoing parameters, it is understood that a rebuild option 87 can beselected from the context sensitive menu 80 in order to propagate themodifications. One way for accessing the context sensitive menu 80 isdescribed more fully above.

The start and increment values can also be adjusted via a first spinnerbox 104 and a second spinner box 106, respectively. The start valuedesignates the number at which to being the sequence, and the incrementvalue designates the value by which to increment the sequenceidentifier. Again, as shown in the data structure diagram of FIG. 4, thestart value is stored in a start attribute 108 and the increment valueis stored in an increment attribute 110. In accordance with oneembodiment, the default setting for both the start and increment valuesis one, though user modification thereof via the spinner boxes 104, 106,or any other appropriate user interface element, is possible.

As best illustrated in FIG. 10, the thumbnail 78 generated on thetoolbox window 50 includes an indicator 112 showing that a sequence hasbeen defined with respect to the annotation 58. Referring again to theflowchart of FIG. 6, once the annotation 58 is linked to the documentand assigned a sequence identifier value, the method continues with astep 304 of displaying the primary graphic 66 and the sequenceidentifier 68 on the workspace window 48. With reference to FIG. 11,which is a detailed view of the exemplary document, a first annotation58 a is placed thereon by any one of several well known-methods,including constructing the same from its constituent parts as describedabove, or by selecting the thumbnail 78, navigating the cursor to thedesired location on the workspace window 48, and providing an inputcorresponding to an selection of that point. This input may be providedas a mouse click, a pen tap, or any other suitable interaction with theuser. Then, a first value of 1 is assigned to its sequence identifier68. In preparation for the next annotation of the same sequence,according to step 306, the first value is incremented to a second valuebased upon the increment attribute 110.

A second annotation 58 b is then linked to the document per step 308.This typically involves again navigating the cursor to a desiredlocation on the workspace window 48 and providing an input correspondingto a selection of that point. It is understood that the secondannotation 58 b has the same primary graphic 66 as that of the firstannotation 58 a. Additionally, the second annotation 58 b is likewisedefined by a second sequence identifier. In step 310, the second value,which is incremented from the first value, is assigned to the secondsequence identifier. Then, in step 312, the second annotation 58 b isdisplayed at the designated location on the document being rendered inthe workspace window 48, and also shows the second sequence identifier,which by way of example, is 2.

At this point, the thumbnail 78 shows a third value of the sequenceidentifier that is incremented from the second value, to indicate whatwill be shown when the next annotation in the same sequence is linked tothe document. Along these lines, the thumbnail 78 is understood to be ascaled representation of the same primary graphic 66 as that of thefirst annotation 58 a and the second annotation 58 b. As indicatedabove, there is a variety of different ways in which annotations can beplaced on the document. In accordance with another embodiment, thethumbnail 78 is active and, when clicked, is operative to link a newannotation to the document, where the new annotation has the sameprimary graphic 66 as the corresponding annotation 58 depicted by thethumbnail 78. Continuing with the previous example, a newly placed thirdannotation 58 c shows the incremented third sequence identifier, e.g.,3.

The continuity of the sequence of related annotations 58 may be varied,with the option being set via a reset parameter pull-down menu 114 ofthe sequence definition screen 88 shown in FIG. 9. One possible optionis limiting the sequence to a single page, such that placing theannotation 58 on a different page of the document is operative to resetthe sequence identifier 68 to its starting value. Upon returning to thepage with an existing sequence, the next annotation added will have asequence identifier value incremented from that of the last placedannotation (on that page). Another possible option is limiting thesequence to a single document, where annotations that are part of thesame sequence spans multiple pages of the document. Similar to singlepage sequence resetting, once the user navigates to a document with anexisting sequence, the next annotation placed anywhere on that documentis assigned a sequence identifier value incremented from that of thelast placed annotation.

Having considered the details of placing annotations on the document, abroader overview with an example sequence will be presented for a morecomprehensible description of the automatic sequence resuming andannotation deletion features. The exemplary document of FIG. 11 depictsan initial version of the document that is created with a firstannotation 58 a, a second annotation 58 b, and a third annotation 58 c.After saving and closing this document, it may be desired to add afourth annotation 58 d, as shown in FIG. 13. As will be described infurther detail below, it is possible for multiple sets of sequences tobe defined within a page or a document, such that the numbering ofannotations in one sequence advances independently of another sequence.However, in the present example, there is only one sequence, so uponopening the initial version, the sequencing resumes automatically andproperly adjusts the sequence identifier 68 to 4.

Next, the deletion of one of the annotations of the sequence will beconsidered. By way of example, it may be desired to remove the secondannotation 58 b. In this case, the method continues with unlinking thesecond annotation 58 b from the document by removing references theretoin memory. The display or workspace window 48 may be refreshed such thatthe second annotation 58 b is no longer shown. In accordance with oneembodiment of the present disclosure, at this point, it is possible forthe other annotations in the sequence to be renumbered. In this regard,as shown in FIG. 14, the sequence identifier of the third annotation isrenumbered to 2, and the sequence identifier of the fourth annotation isrenumbered to 3

Referring to FIGS. 15 and 16, another workflow setting may involvemaintaining the number sequencing of the annotations even ifintermediate annotations are removed from the document. For example, anarchitect may inspect a construction site to mark the location on theblueprints where flaws are identified, also known as “punch process.”The architect may dictate details of the flaws into a voice recorder asthe inspection progresses, and to do so effectively, it is understoodthat each markup can be uniquely referenced.

This example also contemplates the use of a custom prefix that derivesits value from a property of the document, which may be stored as adocument-wide variable called “DrawingNumber.” The user may assign avalue to the DrawingNumber variable. As noted above, the variable may bereferenced from the prefix designation input 94 shown in the sequencedefinition screen 88 of FIG. 9. Specifically, an escape code, nominallythe ampersand (“&”) symbol, may be utilized, with the name of thevariable enclosed within brackets, as such: &[DrawingNumber]. By way ofexample, the DrawingNumber variable is set to “A204”.

Another example document shown in FIGS. 15 and 16 depicts a buildingplan with a variety of different features. As potential issues arenoted, a particular sequence identifier may be recorded, and marked onthe document as an annotation. In this way, a first annotation 116 adesignated as “A204.1” is added, followed by a second annotation 116 bdesignated as “A204.2” and then a third annotation 116 c designated as“A204.3”. Later, it may be discovered that the first annotation 116 a isno longer necessary, and removed as described above. In accordance withanother embodiment, the remaining second annotation 116 b and thirdannotation 116 c are not renumbered, as shown in FIG. 16. The designator“A204.2” remains with the second annotation 116 b, and the designator“A204.3” remains with the third annotation 116 c, such that referentialintegrity is maintained with the aforementioned dictation. Subsequentlyadding a fourth annotation 116 d involves incrementing the sequenceidentifier from the most recently placed third annotation 116 c, anddisplays the same in conjunction with the predefined prefix and primarygraphic.

Selection between the first mode of operation where deletion is followedby renumbering, and the second mode of operation where deletion is notfollowed by renumbering, is possible via the sequence definition screen88. Specifically, there is provided a checkbox 118 with which theautomatic renumbering feature can be activated and deactivated.

The foregoing examples presuppose that each of the annotations is partof the same sequence. As briefly noted above, it is expresslycontemplated that multiple sets of sequences can be defined within apage or a document, such that the numbering of annotations in onesequence advances independently of another sequence. Each group ofannotations that are part of the same sequence is referred to as aninstance, and so each annotation or data object 52 is understood toinclude an instance identifier 120.

Adding another annotation to the document, regardless of whether it ispart of a different instance or not, proceeds in essentially the sameway as adding a second annotation described above. A third annotationdefined by a third sequence identifier and a third primary graphic arelinked to the document, and a third value is assigned to the thirdsequence identifier. Where the third annotation is part of the sameinstance as the first and second annotations, the instance identifier120 therefor are identical. If, on the other hand, the third annotationis part of a different instance, it is assigned a different value forthe instance identifier 120. In this regard, the third primary graphicmay be identical to those of the first and second annotations, but inmany cases, a different primary graphic may be utilized.

Individual thumbnails for the toolbox window 50 are generated for eachinstance, so that each instance is uniquely accessible. Considering thatthe thumbnails are secondary representations of the underlying primarygraphic, different primary graphics between one instance and anotherhelp in readily distinguishing its corresponding thumbnails.Additionally, the subsequent values of the sequence identifiers 68displayed in the thumbnails are also understood to be independent of oneinstance to another.

A new instance can be defined in the same manner described above inrelation to creating a new annotation, but an existing instance can alsoserve as a basis for a new one. As best illustrated in FIG. 10, thethumbnail 78 includes an indicator 112 that is clickable to start a newinstance using the same primary graphics. With reference again to FIG.8, it is also possible to select a reset option 89 from the contextsensitive sub-menu 84.

With regard to resuming the sequence where multiple instances arepresent, the particular annotation that is to be the basis of theselected sequence is manually selected. While present embodimentscontemplate such manual control, certain default selections may be made,for example, the sequence can resume with the most recently usedinstance. It will be appreciated that any other criteria may be utilizedto give priority to one instance over another.

The particulars shown herein are by way of example only for purposes ofillustrative discussion, and are presented in the cause of providingwhat is believed to be the most useful and readily understooddescription of the principles and conceptual aspects of the variousembodiments set forth in the present disclosure. In this regard, noattempt is made to show any more detail than is necessary for afundamental understanding of the different features of the variousembodiments, the description taken with the drawings making apparent tothose skilled in the art how these may be implemented in practice.

What is claimed is:
 1. A method for sequentially annotating a document,comprising: linking a first annotation to the document, the firstannotation being defined by a first primary graphic and is a part of auser-defined annotation sequence, a position within the annotationsequence being based upon a value of a first sequence identifierindependent of the first primary graphic and associated with the firstannotation; assigning a first value to the first sequence identifier;displaying the first primary graphic and the first sequence identifieron a workspace window; incrementing the first value to a second value;linking a second annotation to the document, the second annotation beingdefined by a second primary graphic identical to the first primarygraphic, the second annotation being a part of the annotation sequencewith another position within the annotation sequence being based upon avalue of a second sequence identifier independent of the second primarygraphic and associated with the second annotation; assigning the secondvalue to the second sequence identifier; displaying the second primarygraphic and the second sequence identifier on the workspace window;linking a third annotation to the document, the third annotation beingdefined by a third primary graphic, the third annotation being a part ofthe annotation sequence with another position within the annotationsequence being based upon a value of a third sequence identifierindependent of the third primary graphic and associated with the thirdannotation; assigning a third value to the third sequence identifier;displaying the third primary graphic and the third sequence identifieron the workspace window; displaying on a toolbox window a secondaryvisual representation having a thumbnail image of the first and secondprimary graphics including the second sequence identifier incrementedfrom the second value, the thumbnail image being associated with a userinterface element for modifying sequences in the document; anddisplaying on the toolbox window a secondary visual representationhaving a thumbnail image of the third primary graphic and the thirdsequence identifier incremented from the third value; wherein the firstannotation, the second annotation, and the third annotation are eachfurther defined by an instance identifier, the value of the instanceidentifier associated with the first and second annotations aredifferent from the value of the instance identifier associated with thethird annotation.
 2. The method of claim 1, wherein the value of theinstance identifier associated with the first, second and thirdannotations are the same.
 3. The method of claim 1, wherein the thirdprimary graphic is identical to the first and second primary graphics.4. The method of claim 1, further comprising: displaying on a toolboxwindow a secondary visual representation of the first, second and thirdprimary graphics, the secondary visual representation including a fourthvalue of the sequence identifier incremented from the third value. 5.The method of claim 1, wherein the user interface element is a contextmenu for modifying sequences in the document.
 6. The method of claim 1,wherein third primary graphic is different from the first and secondprimary graphics.
 7. The method of claim 1, wherein the user interfaceelement being for defining, resetting and rebuilding sequences in thedocument.
 8. The method of claim 1, further comprising: displaying on atoolbox window a secondary visual representation of the first and secondprimary graphics; wherein the secondary visual representation includes athird value of the sequence identifier incremented from the secondvalue.
 9. The method of claim 8, further comprising: receiving an inputrepresentative of a selection of the secondary visual representation;wherein the third annotation is linked to the document in response toreceiving the input representative of the selection of the secondaryvisual representation.
 10. The method of claim 1, further comprising:unlinking the first annotation from the document.
 11. The method ofclaim 10, further comprising: decrementing the second sequenceidentifier of the second annotation to the first value.
 12. The methodof claim 1, wherein the first annotation and the second annotation areeach associated with a single page of the document.
 13. The method ofclaim 1, wherein: the first annotation is associated with a first pageof the document; and the second annotation is associated with a secondpage of the document.
 14. The method of claim 1, wherein the sequenceidentifier is alphabetical.
 15. The method of claim 1, wherein thesequence identifier is numerical.
 16. The method of claim 1, wherein thesequence identifier is incremented by a predefined value.
 17. The methodof claim 1, further comprising: receiving the first value of thesequence identifier.
 18. The method of claim 1, wherein the firstannotation is further defined by a sequence suffix displayed with thesequence identifier in connection with the primary visualrepresentation.
 19. The method of claim 1, wherein the first annotationis further defined by a sequence prefix displayed with the sequenceidentifier in connection with the primary visual representation.